CPUクロックR8C/15には、高速(8MHz)と低速(125kHz)のオンチップオシレータと、外部クロック入力端子(何故かメインクロックと呼ばれる・・・)があります。 CPUリセット直後は、低速オンチップオシレータ(しかも1/8分周で15.625kHz)で動作していますが、 メインクロックに20MHzまでの発振子を接続することで高速化が可能です。 ここでは外部クロックは使用せずに、内部の高速オンチップオシレータで、8MHzで駆動させる手順をメモとして残します。 /* 高速オンチップオシレータに切り替える */ prc0 = 1; // システムクロック関係レジスタの書き込み許可(p68) hra00 = 1; // 高速オンチップオシレータ発振(p53) asm("NOP"); // 発振安定待ち asm("NOP"); asm("NOP"); asm("NOP"); hra01 = 1; // 高速オンチップオシレータ選択 cm16 = 0; // 分周なしモード cm17 = 0; cm06 = 0; // 非1/8分周モード(cm16,17設定有効) prc0 = 0; // 書き込み禁止 ・システムクロック関係レジスタにはプロテクト機能が付いている。 ・高速オンチップオシレータを発振させてから、安定させるまでちょっと待ち、クロック選択を高速に切り替える。 ・高速オンチップオシレータに切り替えてから分周数を設定し、その設定を有効に切り替える。 マニュアルを見ると、レジスタの設定順序について細かく指示がありますので、一読を・・・。 ジャンル別一覧
人気のクチコミテーマ
|